'use strict';
const dayjs = require('dayjs');
module.exports = app => {
    const { STRING, INTEGER,DECIMAL } = app.Sequelize;
    const Model =  app.model.define(
        'collect',
        {
            id: {type: INTEGER, primaryKey: true, autoIncrement: true},
            member_id: INTEGER(11),
            goods_id: INTEGER(11),
            create_time: {
                type: app.Sequelize.DATE,
                allowNull: false,
                get() {
                    return dayjs(this.getDataValue('create_time')).format('YYYY-MM-DD HH:mm:ss');
                },
            },
            updated_time: {
                type: app.Sequelize.DATE,
                allowNull: false,
                get() {
                    return dayjs(this.getDataValue('updated_time')).format('YYYY-MM-DD HH:mm:ss');
                },
            }
        },
        {
            tableName: 'collect',
            timestamps: true, // 启用时间戳(createdAt, updatedAt)
            updatedAt: 'updated_time', // 不想要 updatedAt
            createdAt: 'create_time', // 想要  createdAt 但是希望名称叫做 created_at
        }
    );
    Model.associate = function () {
        Model.belongsTo(app.model.Member, { foreignKey: 'member_id', targetKey: 'id'})
        Model.belongsTo(app.model.Goods, { foreignKey: 'goods_id', targetKey: 'id'})
    }

    return Model
};



